#ifndef __MESSAGEUPDOWNTIMER_H_
#define __MESSAGEUPDOWNTIMER_H_

#include "ariba/ariba.h"
#include "ariba/utility/system/Timer.h"
#include "../AribaNode.h"

using namespace ariba;
using ariba::utility::Timer;
using std::string;

class AribaNode;

class MessageUpDownTimer: public Timer {
	use_logging_h(MessageUpDownTimer)

public:
	MessageUpDownTimer( AribaNode* _parent );
	virtual ~MessageUpDownTimer();
	bool getUpFlag();
	bool getDownFlag();
	void setUpFlag(bool up);
	void setDownFlag(bool down);
	bool isFlagSet(bool upDown);
	void setFlag(bool upDown);
	bool getFlag();
	void clearFlag(bool upDown);

protected:
	virtual void eventFunction();
	AribaNode* app;

private:
	bool up;
	bool down;
};

#endif // __MESSAGEUPDOWNTIMER_H_
